﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace VPL.Mapper
{
    public interface IMapper<DomainObject, DTO>
        where DomainObject : new()
        where DTO : new()
    {
        IMapper<DomainObject, DTO> CreateMap<NestedtDO, NestedDTO>();
        DTO Map(DomainObject from);
        DomainObject Map(DTO from);        
        IEnumerable<DTO> Map(IEnumerable<DomainObject> from);
        IEnumerable<DomainObject> Map(IEnumerable<DTO> from);
    }
}
